From c2c982f908963e2eabaf6a9eb20f4fb8a762294d Mon Sep 17 00:00:00 2001 From: "vhanquez@kneesa.uk.xensource.com" Date: Thu, 8 Dec 2005 07:11:09 +0000 Subject: [PATCH] allow a port to be specified for migration. Signed-off-by: Vincent Hanquez --- tools/python/xen/xend/XendClient.py | 5 +++-- tools/python/xen/xend/XendDomain.py | 5 +++-- tools/python/xen/xend/server/SrvDomain.py | 3 ++- tools/python/xen/xm/migrate.py | 6 +++++- 4 files changed, 13 insertions(+), 6 deletions(-) diff --git a/tools/python/xen/xend/XendClient.py b/tools/python/xen/xend/XendClient.py index 7e1ec07140..4461304cda 100644 --- a/tools/python/xen/xend/XendClient.py +++ b/tools/python/xen/xend/XendClient.py @@ -256,12 +256,13 @@ class Xend: {'op' : 'save', 'file' : filename }) - def xend_domain_migrate(self, id, dst, live=0, resource=0): + def xend_domain_migrate(self, id, dst, live=0, resource=0, port=0): return self.xendPost(self.domainurl(id), {'op' : 'migrate', 'destination': dst, 'live' : live, - 'resource' : resource }) + 'resource' : resource, + 'port' : port }) def xend_domain_pincpu(self, id, vcpu, cpumap): return self.xendPost(self.domainurl(id), diff --git a/tools/python/xen/xend/XendDomain.py b/tools/python/xen/xend/XendDomain.py index c5510c8aad..5971430ad9 100644 --- a/tools/python/xen/xend/XendDomain.py +++ b/tools/python/xen/xend/XendDomain.py @@ -390,12 +390,13 @@ class XendDomain: raise XendError(str(ex)) return val - def domain_migrate(self, domid, dst, live=False, resource=0): + def domain_migrate(self, domid, dst, live=False, resource=0, port=0): """Start domain migration.""" dominfo = self.domain_lookup(domid) - port = xroot.get_xend_relocation_port() + if port == 0: + port = xroot.get_xend_relocation_port() try: sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect((dst, port)) diff --git a/tools/python/xen/xend/server/SrvDomain.py b/tools/python/xen/xend/server/SrvDomain.py index 9e8b2d216f..872a3f6bf4 100644 --- a/tools/python/xen/xend/server/SrvDomain.py +++ b/tools/python/xen/xend/server/SrvDomain.py @@ -90,7 +90,8 @@ class SrvDomain(SrvDir): [['dom', 'int'], ['destination', 'str'], ['live', 'int'], - ['resource', 'int']]) + ['resource', 'int'], + ['port', 'int']]) return fn(req.args, {'dom': self.dom.domid}) def op_pincpu(self, _, req): diff --git a/tools/python/xen/xm/migrate.py b/tools/python/xen/xm/migrate.py index ec3d16bb46..f36169ccf5 100644 --- a/tools/python/xen/xm/migrate.py +++ b/tools/python/xen/xm/migrate.py @@ -40,6 +40,10 @@ gopts.opt('live', short='l', fn=set_true, default=0, use="Use live migration.") +gopts.opt('port', short='p', + fn=set_int, default=0, + use="Use specified port for migration.") + gopts.opt('resource', short='r', val='MBIT', fn=set_int, default=0, use="Set level of resource usage for migration.") @@ -60,5 +64,5 @@ def main(argv): dst = args[1] if dom in [DOM0_NAME, DOM0_ID]: opts.err('Cannot migrate ' + dom) - server.xend_domain_migrate(dom, dst, opts.vals.live, opts.vals.resource) + server.xend_domain_migrate(dom, dst, opts.vals.live, opts.vals.resource, opts.vals.port) -- 2.30.2